import * as api from '@/api/permission'
import allRoutes from '@/router/generateRoute'
//把recursion函数递归创建用户路由的方法引入
import recursionRoutes from '@/router/recursionRoutes';
//引入路由
import router from '@/utils/routerGuard'
//引入动态路由
import dynamicRoutes from '@/router/dynamicRoutes'

let routes = allRoutes.find(route => route.name === 'home')
// console.log(routes)
export default {
    namespaced: true,
    state: {
        userMenu: []
    },
    getters: {},
    mutations: {
        //设置用户菜单
        SET_USER_MENU(state, payload) {
            state.userMenu = [...payload]
            //动态添加路由，使用router.addRoute这个方法
            dynamicRoutes.children = [...payload]
            router.addRoute(dynamicRoutes)
        }
    },
    actions: {
        //获取远程菜单
        FETCH_MENU_LIST({ commit }) {
            return api.getMenuListApi()
                .then(res => {
                    console.log(res.data.menuList)
                    let userMenu = recursionRoutes(res.data.menuList, routes.children)
                    commit('SET_USER_MENU', userMenu)

                })
        }
    },
    modules: {},
};